Method and apparatus for creating contextualized auction feeds

ABSTRACT

A method and apparatus is disclosed herein for generating contextualized live auction feeds. The method of generating contextualized live auction feeds comprises receiving context data from a user. The method further comprises utilizing the context data received from the user to search auctions. The method, in one embodiment, includes generating contextualized live auction feeds for an auction based on the context data.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of application Ser. No.11/357,813, filed Feb. 16, 2006, the disclosure of which is herebyincorporated by reference in its entirety.

FIELD OF THE INVENTION

The present invention relates to the field of providing feeds; moreparticularly, the present invention relates to providing a live feed foran auction based on contextualized data received from a user.

BACKGROUND

The internet continues to expand as a source of information gathering,information distribution, and a marketplace for consumer goods.Websites, computer desktops, and other computer applications that wereonce composed of static or fixed content, now provide live content toreaders. Feeds can be incorporated into a user interface, eithermanually, by software, or through the use of online services, to providerelevant and up-to-date information, in the form of links, short textualexcerpts, or a combination of both. Generally, a feed is created basedon manual selection, a keyword search of content, constructed rules, orautomated algorithms. The result is feed content consisting of a groupof links, news headlines, podcasts, weblogs, etc.

A powerful feature of a feed is that it provides relevant data, such asnews data, to a person who is a consumer of the content of the feed. Thefeed generally represents current content. When new content is added toa feed, the old content is removed. Thus, the user sees currentinformation. Because of the ability to provide up-to-date information,feeds are typically incorporated into other content such as web sites,newsletters, weblogs, intranets, applications, kiosks, phones, set topboxes (i.e., cable television), etc. However, one significant limitationof a feed is that the content of the feed is determined in advance.

One attempt to overcome the limitation of predetermined feed content iscontextualized advertising. In contextualized advertising, a website maydecide to include feeds that provide advertisements to the website,usually in the form of banner ads, pop-ups, advertisement frames, etc.The contextualized advertisement feeds include the ability to analyzethe content of a website and provide an advertisement relevant to thecontent currently being supplied by the website.

A drawback to contextualized advertisements is the possibility ofdisplaying an inappropriate or unwanted advertisement on a website. If awebsite publishes an article harshly criticizing a major airline,analysis of the content by a contextualized advertisement service maypick up on references to the airline in the article. According to thediscussion above, a contextualized advertisement server might theninsert an advertisement for that airline into the website. However,supplying an advertisement for the airline to a website criticizing theairline would neither be relevant nor appropriate. The problem describedabove would be true for any server that is attempting to addcontextualized advertisements to a user interface.

Another area of great interest on the internet is in the expansion andgrowth of internet auctions. An internet auction is generallyfacilitated by an auction host that provides sellers a marketplace tooffer their goods for sale. The auction host also allows buyers to bidon the goods over a predetermined period of time. At the conclusion ofthe auction, the highest bidder wins, which can result in greatfinancial savings to the buyer. Because of the explosion in popularityof internet auctions, there are currently millions of items for sale onauction hosts. However, because of the staggering number of items forsale in internet auctions, it can be difficult for a potential buyer tolocate a specific item. Furthermore, a buyer may not be aware of similarbut equally relevant items to an item the user is currently searchingfor.

Another drawback of the current state of internet auctions is that whilethe auction is underway, a potential buyer may not be fully apprised ofthe current state of the auction. Unless the buyer sets up a messagingservice or periodically navigates to an auction host, the buyer may misscritical updates to the auction, such as the current bid, how much timeis left in an auction, whether a reserve price has been met, etc. Thesecritical pieces of information often determine the outcome of an auctionand the success or failure of a potential buyer in winning an auctionand acquiring the desired goods.

SUMMARY

A method and apparatus is disclosed herein for generating contextualizedauction feeds. The method of generating contextualized auction feedscomprises receiving data from a user. The method further comprisessearching available auctions and/or content and providing suggestedcontextually appropriate feeds for auctions to the user. The methodfurther comprises receiving a selection of one or more feeds from theuser. Furthermore, the method includes continually updating the selectedlive auction feeds so that the user remains appraised of the currentstatus of the selected auction associated with the live auction feed.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be understood more fully from the detaileddescription given below and from the accompanying drawings of variousembodiments of the invention, which, however, should not be taken tolimit the invention to the specific embodiments, but are for explanationand understanding only.

FIG. 1 is a network diagram of one embodiment of a network which may beused to implement the system.

FIG. 2 is a block diagram of a one embodiment of a contextualizationsystem.

FIG. 3 is a block diagram of one embodiment of the server.

FIG. 4 is a flowchart of one embodiment of a user utilizing the liveauction feeds.

FIG. 5 is a flowchart of one embodiment of a server contextualizing userdata to generate live auction feeds.

FIG. 6 is a flowchart of one embodiment of a server updating selectedlive auction feeds.

FIG. 7 is a block diagram of one embodiment of a computer system whichmay be used with the present invention.

DETAILED DESCRIPTION

A method and apparatus for generating contextualized live auction feedsin pseudo-real time is described. A user creates data by interactingwith the user interface. An auction feed contextualization tool, thentransmits the data to a server through a network. The server generates acontextual live auction feed for one or more auctions based on the data.In one embodiment, the server generates the feeds by using the contextdata created by the user to search auction hosts. In one embodiment,this search is performed pseudo-real-time, as the context data is beingcreated. The contextualized live auction feeds generated by the serverare then transmitted to the user.

The contextualized live auction feeds are displayed in a feed list forthe user's review. The user, through the user interface, can choose tosubscribe, select, restrict, lock, or otherwise manage the live auctionfeeds as they are generated. Furthermore, as the user continues toproduce data, the server continues to generate live auction feeds basedon the new data and accumulation of previous data. The feeds generatedin response to the accumulated and updated data are transmitted to theuser interface. In response to receiving the new feeds based on theupdated data, the feed list is updated and displayed to the user.

In one embodiment, the user can then choose to subscribe to acontextualized live auction feed by selecting a feed from the feed list.Upon selection the server will not only continue to suggest contextuallyappropriate live auction feeds, but the server will also monitor theauction associated with the selected live auction feed for updates. Ifthere is an update to the selected auction, for example a new bid, theserver will automatically update the selected live auction feed toreflect updates in the auction.

In one embodiment, feed generation may also be personalized based onpast behavioral actions of the user. The user behavioral actions thatimpact feed generation and/or feed delivery may include generating liveauction feeds for frequently searched subject matter, displayingfrequently chosen restriction options within the user interface, etc.Furthermore, the user interface may incorporate controls that enable theuser to select preferences, disable preferences, enter preferences, etc.One skilled in the art will recognize the numerous options available forpersonalizing feed generation, selection, and display based on userbehavior.

In the following description, numerous details are set forth to providea more thorough explanation of the present invention. It will beapparent, however, to one skilled in the art, that the present inventionmay be practiced without these specific details. In other instances,well-known structures and devices are shown in block diagram form,rather than in detail, in order to avoid obscuring the presentinvention.

FIG. 1 is a network diagram of one embodiment of a network that may beused to implement the invention, as described below. Contextualizationsystem 100 is coupled to a server 130 via network 140. For oneembodiment, network 110 is an insecure network, such as the internet.The contextualization system 100 may be coupled to the network 110 via amodem operating over telephony or cable lines, a digital subscriber line(DSL), a wireless connection, a local area network (LAN), or anothertype of connection.

Contextualization system 100 may be used to run an application or accessa web page. In one embodiment, the application used by contextualizationsystem 100 further includes an interface for data entry. In anotherembodiment, contextualization system 100 may monitor the interactions ofa user with various applications. These interactions, which may rangefrom content creation, content consumption, to other interaction withcontent are used to create context data, which is used to generate thecontextual auction feeds.

The context data is transmitted to the server 130 through the network110. The context data is then used by the server 130 to create andreturn live auction feeds to the user, e.g. contextualized live auctionfeeds. Because the context data is received, used to generatecontextualized auction feeds, and then returned by server 130, the userreceives contextualized live auction feeds in real-time or pseudo-realtime.

In one embodiment, in order for server 130 to create and return liveauction feeds, server 130 connects with auction host 120 through network110. Auction host 120 may be the host of an individual auction, orauction host may host a collection of auctions. Furthermore, server 130may connect with more than one auction host (not shown) as server 130can search any number of auction hosts. Server 130 then uses user datato search current auctions of auction host 120. Based upon the currentauction of auction host 120 and the user data received fromcontextualization system 100, server generates contextually appropriatelive auction feeds for contextualization system 100. In anotherembodiment, server 130 may obtain auction data from auction host 120,and store it locally. The server 130 may then use the local auction datafor generating contextualized auction feeds.

Upon server 130 receiving a selection of a user to subscribe to acontextualized live auction feed, server 130 will monitor auction host120 for updates to the auction. Server 130 may monitor the auction hostcontinuously or at discrete intervals so that server 130 can update thelive auction feed as updates are monitored. In one embodiment, theupdate interval may be shortened, as the auction nears its close. In oneembodiment, a live auction feed generated by server 130 may consist ofat least one static element and at least one dynamic element. Becauseinformation, such as auction title, item number, the subject matter ofthe auction, seller identity, end date, etc. will generally not changeover the course of the auction, the server 130 will not update thesefields, if they are displayed. Thus, they are referred to as staticelements of the live auction feed. However, certain elements of anauction, such as current bid, time remaining, last bid, bid history,seller rating, seller feedback, etc., are subject to change over thecourse of an auction. Server 130 continuously monitors auction host 120for updates to these fields and dynamically updates them when an updateis monitored. Thus, they are referred to as dynamic elements of the liveauction feed. In another embodiment, the live feed only provides a smallnumber of static elements (i.e. auction number, item description) and asmall number of live elements (i.e. current price). In one embodiment,the particular auction elements displayed may be configured by the user.However, in one embodiment, the feed always includes a link to theauction itself.

In one embodiment, an item such as “time remaining” may be set as astatic item which is tracked within the feed itself, i.e. withoutreferring to the auction host. Since the time the auction ends isdefined, the time remaining can be dynamically calculated within thefeed itself.

In one embodiment, the processes and functionality of contextualizationsystem 100 may be embodied in a website 140. Thus, a user who traversesthe Internet to website 140, embodying the current invention, maygenerate context data on the website 140. Then contextualization system100 would interface with server 130, similar to the discussion above, togenerate contextualized live auction feeds based on user data obtainedthrough website 140. In another embodiment, contextualization system 100may be embodied in a small program, such as a JAVA program, running onthe user's computer system, or other device. The program may takecontext data from user activities regardless of the application which isused.

For one embodiment, the server 130 may reside on the same system as thecontextualization system 100 or website 140. As is known in the art, asingle device may serve as both a server 130 and a client device, suchas contextualization system 100. In that instance, the data being sentfrom server 130 to contextualization system 100 is not sent via network110, but rather internally. However, otherwise, the mechanisms describedbelow are not substantively changed.

FIG. 2 is a block diagram of one embodiment of the contextualizationsystem.

Contextualization system 100 includes user interface 210 for interfacingwith a user. In one embodiment, interface 210 performs in-out functionsof the user interface so that the user can generate, enter, edit, readand/or otherwise interact with data that is used for contextualizationby a server as well as view feeds returned from server 130. In anotherembodiment, interface 210 monitors the interactions of a user with acomputer system, which are transformed by the user interface to data tobe contextualized.

Contextualization system 100 receives context data or command entered bythe user. Contextualization system 100 can discern between data andcommands that can be entered or selected by a user. A user may interactwith various applications and data to generate context data.Interactions may include entering, editing, pasting or otherwisecreating text or image data, reading or otherwise consuming data,clicking or otherwise selecting data, files or websites, openingdocuments, opening applications etc. The context data corresponding tothe user actions are received 226 by the user interface.

Contextualization system 100 receives data 226, in one embodiment aseach interaction is completed. For example, for data entry, eachinteraction may be completed when each letter is typed, as each word iscompleted, each sentence, paragraph, or other data unit is finished,etc. In one embodiment contextualization system 100 prepares the contextdata for transmission over network 110 to server 130. In one embodiment,the context data may be converted into a format suitable for datatransmission over a computer network, such as network 110.

The data from contextualization system transmission logic 230 is thenprovided to connection logic 240 for transmission over network 110.Connection logic 240 may be a modem, Ethernet card, or any other devicefor coupling contextualization system 100 to network 110. Connectionlogic 240 then transmits data, comprising the data or change in data, toserver 130 so that server 130 can generate contextualized feeds based onthe data. The contextualization process of server 130 is described inmore detail below.

After server 130 generates live auction feeds based on the context data,the server transmits the live auction feeds through network 110 back toconnection logic 240. Thus, contextualized live auction feeds 250 basedon the user data are returned to the contextualization system 100.Contextualization system 100 receives the contextualized live auctionfeeds 250, which can be one or more feeds, and transmits the feeds tointerface 210. As discussed above, in one embodiment, each feedtransmitted to interface 210 consists of static elements that will notchange over the course of an auction, and dynamic elements that can becontinuously monitored and dynamically updated by server 130. Interface210 then displays 205, or otherwise communicates, the suggestedcontextualized live auction feeds to the user. In one embodiment, onlysuggested feeds which are selected by the user are dynamically updated.In one embodiment, the information includes controls in addition to thecontextualized live auction feeds.

A user, through interface 210, can also issue a command or commands byrequesting one or more of the following: feed restriction 228, feedparameter modification 222, or contextualized live auction feedselection/subscription 224. Thus, as data is generated by a user, theuser can select one of the suggested contextualized live auction feeds,restrict feed generation by the server, modify the parameters thatserver 130 uses to generate feeds, etc. In one embodiment, this may bedone via controls displayed along with the feeds. In another embodiment,commands may be entered along with the text that performs thesefunctions. Alternative methods of entering commands/signals/indicationsmay be used. In one embodiment, a feed restriction may consist of arestriction such as restricting a feed or selected feeds to a daterange, provider, topic, price, seller location etc. In one embodiment,feeds may be restricted by any available metadata. In one embodiment,this metadata includes:

Title

Source

Category

Keyword

Source Category

Seller Rank

Seller Location

Region

Language

Genre

User Interface

Author

Auction Host(s)

Duplicates Filter

Sub, Reg, Prem Sources

Number of Search Results

Relevance vs Date Order

Backscroll

Date Range

Last Article ID

Geolocation Searches

-   -   Location Type    -   Region    -   Subregion    -   Country    -   State    -   Zip Area    -   Zip and Postal Code    -   Entity Name        Furthermore, the restrictions on feeds may also be used to        modify the parameters which the server uses to generate feeds.

Contextualization system 100 transmits data to server 130 as data isbeing interacted-with by the user. Because the server 130 generatescontextualized live auction feeds, and permits controls such assubscribe, restrict, etc. as the data is being created, the process ofcreating data and associated contextual live auction feeds occurs inreal time, or pseudo-real time.

For one embodiment, after the user has selected/subscribed to acontextualized live auction feed 224, server 130 will continuouslymonitor auction host 120 for updates to the auction associated with theselected feed. Server 130 will dynamically update the selected liveauction feed by interfacing with connection logic 240 of the userinterface. Contextualization system 100 receives 250 the update(s) tothe dynamic elements of the selected live auction feed and transmits theupdate(s) to interface 210. Interface 210 updates the feed, as it isdisplayed 205 to user, so that the user is continuously apprised of anyupdates to the selected auction(s).

Advantageously, the user can select live auction feeds pertaining to anauction of interest to the user. This ensures that inappropriate feedsor unwanted feeds are only displayed temporarily as suggestions, whilecontextually appropriate feeds are returned to the user. Furthermore,the user can rest assured that critical updates to an auction will notgo unnoticed as the live auction feeds are continuously and dynamicallyupdated.

FIG. 3 is a block diagram of one embodiment of the server. Server 130includes a connection logic (not shown) for coupling server 130 to anetwork, such as network 110. The connection logic manages communicationbetween server 130 and contextualization system 100, auction host 120,and website 140.

When a user generates context data to be used to generate contextualizedfeeds by server 130, the data is received by receiving logic 305. In oneembodiment, data is received by server 130 in pseudo-real time. Data, asdiscussed above, can be user interactions monitored by user interface100, text, image data, sound data, metadata associated with image andsound data, etc. Receiving logic 305 can distinguish between datareceived from contextualization system 100, and a data received fromwebsite 140.

Server 130 receives data from contextualization system 100 in varyingdata units. In one embodiment, server 130 receives data as each letteris typed by a user. In another embodiment, server 130 receives data aseach word, sentence, paragraph, or other data unit is input by a user.In one embodiment, server 130 receives data corresponding to userinteractions in various data sizes such as data/application selection,viewed data, search requests, etc.

The data is transferred to search logic 310 as server 130 receives thedata. Search logic 310 analyzes the data, so that contextuallyappropriate live auction feeds may be generated 315 by server 130. Inorder for search logic to generate contextualized live auction feeds,search logic 310 also gathers data from auction connection logic 335.Auction connection logic interfaces with auction host 120 throughnetwork 110 so that auction connection logic can transmit currentauction data to search logic 310.

In one embodiment, search logic analyzes current data, accumulated data,and auction data, and the search is based on auction data and theaccumulated data received by the server 130. In one embodiment, data isaccumulated continuously. In another embodiment, when the user changestracks, i.e. changes from consuming data to creating data, the past datais discarded and a new accumulation is started. Alternatively, the datamay be discarded periodically, when a certain amount of data has beencollected, when the user has subscribed to a number of auctions, or onsome other basis. In one embodiment, search logic 310 utilizes thecontext data to search the auction data to generate contextual auctions.Search logic 310 may use a keyword search. Note that context data andauction data may include metadata. In one embodiment, search logic 310uses a Boolean search. In yet another embodiment, natural languagesearching may be used. One skilled in the art will recognize thatalternative methods of searching may be used.

After the search logic 310 searches the current auctions and user data,live auction feed generation logic 315 generates live auction feedsbased on the search of search logic 310. Live auction feed generationmay consist of generating a link to a contextually appropriate auctionor group of auctions from one website or a collection of websites. Inone embodiment, the auction feeds that are available to feed generationlogic 315 are pre-analyzed and stored in a database. In one embodiment,these live auction feeds may be generated based on any auction, inaddition to internet auctions, which are available to the system.

Live auction feed delivery logic 320 then transmits the live auctionfeed or list of feeds to contextualization system 100 so that thecontextualization system can update a feed list of the live auctionfeeds received from server 130.

A user may select/subscribe to live auction feeds, restrict generationof feeds, alter factors for feed generation, etc. When such a command isselected, receiving logic 305 receives the command. The command is thenhandled by restriction and auction feed selection logic 325. When theuser selects a live auction feed, restriction and auction feed selectionlogic 325 has the feed generated 315 and delivered 320 to user interfaceso that the user will know the feed was successfully selected.Additionally, when a user selects a live auction feed, receiving logic305 transmits the selection to auction connection logic 335 so thatauction connection logic can store the selection in memory 330. Further,auction connection logic transmits the selection to auction monitoringlogic 340 so that auction monitoring logic 340 can continuously monitorthe selected live auction feed.

In one embodiment, contextualization system 100 can be used to definecriteria and/or preferences that effect how search logic searches forfeeds. In one embodiment, the criteria may include one or more of data,data range, source, geographic location, etc. An exemplary listing ofsuch factors is discussed above. As such, search logic can be used tofine-tune feed generation according to a user's preferences. In oneembodiment, these preferences may be set on a case-by-case basis. Inanother embodiment, these preferences may be entered once, and appliedglobally or to a subset of entries, based on the user's preferences.

Contextualization system 100 may also be used to select a live auctionfeed from the user's feed list. In one embodiment, restriction and feedselection logic 325 stores the selection in a memory 330. Thus, the liveauction feed selection can later be recalled from memory 330 by a user.Furthermore, the restrictions are stored as well. Thus, the restrictionscan later be recalled from memory 330 so that server can generate a liveauction feed list based on the stored previous feed restrictionsassociated with a user. In one embodiment, memory 330 is a cache memorywithin server 130. In another embodiment, memory 330 is an externalmemory coupled to server 130. In this case, the external memory could bea cache memory, database, or any other apparatus capable of storingfeeds or feed restrictions. The varying embodiments of memory 330 aredenoted by the dashed lines representing the memory of FIG. 3.

After the user has made a feed selection, auction monitoring logic 340will continuously monitor the selected auction for updates. In oneembodiment, in order to monitor an auction, auction monitoring logic 340interfaces with auction connection logic 335 which gathers informationfrom auction host 120. Thus, when auction monitoring logic 340determines that a relevant change has occurred to an auction, auctionmonitoring logic 340 transmits the update to live auction feedgeneration logic 315. In one embodiment, relevant changes are changes tothose auction elements which are displayed in the live auction feed forthe user. Live auction feed generation logic 315 generates an updatedfeed and forwards the update to live auction feed delivery logic 320.The updated contextualized live auction feed is then transmitted tocontextualization system 100 through network 110 so that the update maybe displayed to the user in the feed list of the contextualizationsystem 100.

FIG. 4 is a flow diagram illustrating one embodiment of a method forgenerating contextualized feeds. The process is performed by processinglogic that may comprise hardware (circuitry, dedicated logic, etc.),software (such as is run on a general purpose computer system or adedicated machine), or a combination of both. The process starts atblock 402 when a user begins interacting with his or her system in amanner that will produce context data. This interaction may includeentering or creating data, editing data, reading or otherwise consumingdata, clicking on data, opening applications, etc. In one embodiment,the process starts when the contextualization system creates contextdata.

Data from the contextualization system is transmitted to the serverthrough a network, where the server receives the content 404. In oneembodiment this occurs on a word-by-word basis. In another embodiment,this occurs on a character-by-character basis. In another embodiment,this occurs at the end of each sentence or paragraph. In anotherembodiment, this occurs after each logical user interaction or group ofinteractions with a computer system. Alternative pseudo-real-timesegments may be created.

After the server has utilized the context data to search auction datagathered form auction hosts, the server returns contextualized liveauction feeds to the user interface 406. The live auction feeds are usedto populate a feed list of the contextualization system.

As discussed above, included in either the contextualization system arerestriction factors that affect how a server generates live auctionfeeds and/or how live auction feeds are displayed by the user interface.A user can select one or more restriction factors 408. However, a useris not required to select any restriction factors as the server willcontinue to generate contextualized live auction feeds upon receivingcontext data.

A user may select a live auction feed 410 from the feed list of the userinterface. In one embodiment, a user can select a group of feeds. Byselecting a contextualized live auction feed, the user will continuouslyreceive updates to the selected live auction feed 412 as a servermonitors updates to an auction corresponding to the selected liveauction feed. The server will monitor the auction associated with theselected contextualized live auction until either the auction ends, orthe user deselects the live auction feed.

While the selected live auction feed(s) are continuously monitored byserver 130, a user may also continue to generate context data. When auser generates additional context data, the feed list is updated byrepeating processing blocks 404-412. Although the suggested feed listchanges in response to new user data, the previously selected liveauction feeds will continue to be displayed to the user.

FIG. 5 is a flowchart of one embodiment of a server generatingcontextualized live auction feeds. The process is performed byprocessing logic that may comprise hardware (circuitry, dedicated logic,etc.), software (such as is run on a general purpose computer system ora dedicated machine), or a combination of both. The process starts atblock 502 when a server, such as server 130, communicates with a userinterface.

A user enters or creates context data collected by contextualizationsystem 100, which is transmitted and received by a server 504. Asdiscussed above, data is received in various units, such as by word,sentence, interaction, etc.

If the server has received data 504 for the first time, the server willuse the context data by searching auction data. The search may be a wordsearch, Boolean search, natural language search, or some other methodfor searching the data along with auction data. However, if the serverhas previously received data, the server will analyze the newly receiveddata with the previously received data, i.e., accumulated data. Ineither case, from the analysis the proposed feed data is generated 508.

Server 130 then generates live auction feed(s) 510 that are contextuallyappropriate to the data received by the server. As discussed above, theserver will generate contextualized live auction feeds 510 that containboth static elements and dynamic elements.

The contextualized live auction feed(s) are then transmitted to a user512 so that the live auction feeds can be displayed in a user interface,such as contextualization system 100. The transmitted feeds eitherpopulate the user's live auction feed list or update the user's liveauction feed list.

After a user has received contextualized live auction feeds, the usercan select feeds from the user interface feed list. A user may alsoselect restrictions as to how feeds are to be generated by a server oron how the feeds are to be displayed. The server receives therestriction and/or feed selection 514. If the user has selected torestrict feed creation and/or display, the selection and/or restrictioneffects future iterations of processing blocks 504-514. However, if auser selects, or subscribes, to a live auction feed, this selection isused to inform the server to monitor the auction corresponding to theselected live auction feed, as discussed in FIG. 6. In both cases, theprocess of feed generation ends 515 when the user discontinues enteringnew data.

FIG. 6 is a flowchart of one embodiment of a server monitoring aselected contextualized live auction feed. The process is performed byprocessing logic that may comprise hardware (circuitry, dedicated logic,etc.), software (such as is run on a general purpose computer system ora dedicated machine), or a combination of both. The process starts atblock 602 when a server is interfacing with a user interface that hasreceived contextualized live auction feeds.

Upon the user making a selection of a contextualized live auction feedto be monitored by the server, the request is transmitted to, andreceived by, a server 604.

After receiving the selection of the user, the server will continuouslymonitor the auction host associated with the contextualized live auctionfeed 606. At processing block 608, the server monitors an auction hostfor any updates that will affect the selected contextualized liveauction feed. As discussed above, auction elements to be monitored bythe server may include any of current bid, time remaining, last bid, bidhistory, seller rating, seller feedback, etc. In one embodiment, onlythose auction elements associated with dynamic display elements of theselected auction feed are monitored.

If there are no updates monitored by the server, the process returns toprocessing block 606 so that the server continues to monitor theauction. When there are updates to the auction, the server will updatethe dynamic element(s) of the selected auction feed 610 and thencontinue to monitor the auction host of the selected feed 606.

However, the update(s) may also indicate to the server that the servercan stop monitoring the selected auction 612. This may occur naturallywhen the auction ends. The server may also stop monitoring an auctionwhen the auction is de-selected by the user. After the server stopsmonitoring the auction, the process ends at processing block 614.

FIG. 7 is one embodiment of a computer system on which the presentinvention may be implemented. It will be apparent to those of ordinaryskill in the art, however, that other alternative systems of varioussystem architectures may also be used.

The data processing system illustrated in FIG. 7 includes a bus or otherinternal communication means 765 for communicating information, and aprocessor 760 coupled to the bus 765 for processing information. Thesystem further comprises a random access memory (RAM) or other volatilestorage device 750 (referred to as memory), coupled to bus 765 forstoring information and instructions to be executed by processor 760.Main memory 750 also may be used for storing temporary variables orother intermediate information during execution of instructions byprocessor 760. The system also comprises a read only memory (ROM) and/orstatic storage device 720 coupled to bus 765 for storing staticinformation and instructions for processor 760, and a data storagedevice 725 such as a magnetic disk or optical disk and its correspondingdisk drive. Data storage device 725 is coupled to bus 765 for storinginformation and instructions.

The system may further be coupled to a display device 770, such as acathode ray tube (CRT) or a liquid crystal display (LCD) coupled to bus765 through bus 765 for displaying information to a computer user. Analphanumeric input device 775, including alphanumeric and other keys,may also be coupled to bus 765 through bus 765 for communicatinginformation and command selections to processor 760. An additional userinput device is cursor control device 780, such as a mouse, a trackball,stylus, or cursor direction keys coupled to bus 765 through bus 765 forcommunicating direction information and command selections to processor760, and for controlling cursor movement on display device 770.

Another device, which may optionally be coupled to computer system 700,is a communication device 790 for accessing other nodes of a distributedsystem via a network. The communication device 790 may include any of anumber of commercially available networking peripheral devices such asthose used for coupling to an Ethernet, token ring, Internet, or widearea network. The communication device 790 may further be a null-modemconnection, or any other mechanism that provides connectivity betweenthe computer system 700 and the outside world. Note that any or all ofthe components of this system illustrated in FIG. 7 and associatedhardware may be used in various embodiments of the present invention.

It will be appreciated by those of ordinary skill in the art that anyconfiguration of the system may be used for various purposes accordingto the particular implementation. The control logic or softwareimplementing the present invention can be stored in main memory 750,mass storage device 725, or other storage medium locally or remotelyaccessible to processor 760.

It will be apparent to those of ordinary skill in the art that thesystem, method, and process described herein can be implemented assoftware stored in main memory 750 or read only memory 720 and executedby processor 760. This control logic or software may also be resident onan article of manufacture comprising a computer readable medium havingcomputer readable program code embodied therein and being readable bythe mass storage device 725 and for causing the processor 760 to operatein accordance with the methods and teachings herein.

The present invention may also be embodied in a handheld or portabledevice containing a subset of the computer hardware components describedabove. For example, the handheld device may be configured to containonly the bus 765, the processor 760, and memory 750 and/or 725. Thehandheld device may also be configured to include a set of buttons orinput signaling components with which a user may select from a set ofavailable options. The handheld device may also be configured to includean output apparatus such as a liquid crystal display (LCD) or displayelement matrix for displaying information to a user of the handhelddevice. Conventional methods may be used to implement such a handhelddevice. The implementation of the present invention for such a devicewould be apparent to one of ordinary skill in the art given thedisclosure of the present invention as provided herein.

The present invention may also be embodied in a special purposeappliance including a subset of the computer hardware componentsdescribed above. For example, the appliance may include a processor 760,a data storage device 725, a bus 765, and memory 750, and onlyrudimentary communications mechanisms, such as a small touch-screen thatpermits the user to communicate in a basic manner with the device. Ingeneral, the more special-purpose the device is, the fewer of theelements need be present for the device to function. In some devices,communications with the user may be through a touch-based screen, orsimilar mechanism.

It will be appreciated by those of ordinary skill in the art that anyconfiguration of the system may be used for various purposes accordingto the particular implementation. The control logic or softwareimplementing the present invention can be stored on any machine-readablemedium locally or remotely accessible to processor 760. Amachine-readable medium includes any mechanism for storing ortransmitting information in a form readable by a machine (e.g. acomputer). For example, a machine readable medium includes read-onlymemory (ROM), random access memory (RAM), magnetic disk storage media,optical storage media, flash memory devices, electrical, optical,acoustical or other forms of propagated signals (e.g. carrier waves,infrared signals, digital signals, etc.).

Whereas many alterations and modifications of the present invention willno doubt become apparent to a person of ordinary skill in the art afterhaving read the foregoing description, it is to be understood that anyparticular embodiment shown and described by way of illustration is inno way intended to be considered limiting. Therefore, references todetails of various embodiments are not intended to limit the scope ofthe claims which in themselves recite only those features regarded asessential to the invention.

1. A method comprising: receiving a unit of context data created from adata interaction between a user and a user interface from the userinterface; using the unit of context data to search a plurality ofauction hosts to identify at least one contextual auction; generating afeed for each at least one contextual auction, wherein each feed is acontextualized auction feed; providing the contextualized auction feedsas part of an electronic feed list to the user interface; subsequent toproviding the electronic feed list to the user interface, receiving,from the user interface, a selection of at least one of thecontextualized auction feeds; and monitoring the selected contextualizedauction feed for updates and automatically updating the selectedcontextualized auction feed when an update is detected.
 2. The method ofclaim 1, wherein the unit of context data is selected from a groupconsisting of: single strokes on a keyboard, a word, a plurality ofwords, or a paragraph of words entered by the user.
 3. The method ofclaim 2, wherein the user interface is a web page.
 4. The method ofclaim 1, wherein the unit of context data comprises metadata of awebpage.
 5. The method of claim 1, wherein the selected contextualizedauction feed comprises at least one static element and at least onedynamic element, the dynamic element being continually updated.
 6. Themethod of claim 1, further comprising: receiving a restriction request,the restriction request including one or more restriction factors; andupdating the contextualized auction feeds of the electronic feed listbased on the restriction request.
 7. The method of claim 1, furthercomprising: receiving additional context data from the user interface;and generating additional contextualized auction feeds based on the unitof context data and the additional context data.
 8. A method comprising:generating context data in the form of a plurality of alphanumericcharacters created by an interaction of a user with a user interfacethat includes a data entry application; using the context data to searchat least one auction host to identify at least one contextual auction;generating a feed for each at least one contextual auction, wherein eachfeed is a contextualized auction feed; providing the contextualizedauction feeds as part of an electronic feed list to the user interface;subsequent to providing the electronic feed list to the user interface,receiving, from the user interface, a selection of at least one of thecontextualized auction feeds; and monitoring the selected contextualizedauction feed for updates and automatically updating the selectedcontextualized auction feed when an update is detected; receivingadditional context data from the user interface; and generatingadditional contextualized auction feeds based on the context data andthe additional context data.
 9. The method of claim 8, wherein thecontext data is selected from a group consisting of: single strokes on akeyboard, a word, a plurality of words, or a paragraph of words enteredby the user.
 10. The method of claim 8, wherein the user interface is aweb page.
 11. The method of claim 8, further comprising: receiving arestriction request, the restriction request including one or morerestriction factors; and updating the contextualized auction feeds ofthe electronic feed list based on the restriction request.
 12. Anarticle of manufacture including one or more computer-readable mediathat contain a program of instructions that when executed by one or moreprocessors in the processing system, causes the one or more processorsto perform a method of providing auction information to a user, theprogramming instructions comprising: receiving a unit of context datafrom a user interface; using the unit of context data to search aplurality of auction hosts to identify at least one contextual auction;generating a feed for each at least one contextual auction, wherein eachfeed is a contextualized auction feed; providing the contextualizedauction feeds as part of an feed list to the user interface; subsequentto providing the feed list to the user interface, receiving, from theuser interface, a selection of at least one of the contextualizedauction feeds; and monitoring the selected contextualized auction feedfor updates and automatically updating the selected contextualizedauction feed when an update is detected.
 13. The article of manufactureof claim 12, wherein the unit of context data comprises a plurality ofwords.
 14. The article of manufacture of claim 13, wherein the unit ofcontext data comprises a paragraph of words.
 15. The article ofmanufacture of claim 13, wherein each word is typed into a data entryapplication included in the user interface.
 16. The article ofmanufacture of claim 15, wherein the user interface is a web page. 17.The article of manufacture of claim 12, wherein the selectedcontextualized auction feed comprises at least one static element and atleast one dynamic element, the dynamic element being continuallyupdated.
 18. The article of manufacture of claim 12, further comprising:receiving a restriction request, the restriction request including oneor more restriction factors; and updating the contextualized auctionfeeds of the electronic feed list based on the restriction request. 19.The article of manufacture of claim 12, further comprising: receivingadditional context data from the user interface; and generatingadditional contextualized auction feeds based on the unit of contextdata and the additional context data.
 20. An apparatus for generatingcontextualized auction feeds, the apparatus comprising: a processor andassociated computer-readable media that contain a program ofinstructions which causes the processor to receive a unit of contextdata created from a data interaction between a user and a user interfacefrom the user interface; use the unit of context data to search aplurality of auction hosts to identify at least one contextual auction;generate a feed for each at least one contextual auction, wherein eachfeed is a contextualized auction feed; provide the contextualizedauction feeds as part of an electronic feed list to the user interface;receive, from the user interface, a selection of at least one of thecontextualized auction feeds; and monitor the selected contextualizedauction feed for updates and automatically update the selectedcontextualized auction feed when an update is detected.